package game;

import java.util.HashMap;
import java.util.Map;

/**
 * FlyweightFactory
 * @author Convidado
 */
public class PersonagemFactory {

    private Map<Integer, Personagem> personagens = new HashMap<Integer, Personagem>();
    private static PersonagemFactory instancia;

    private PersonagemFactory() {
    }

    public static PersonagemFactory getInstancia() {
        if (instancia == null) {
            instancia = new PersonagemFactory();
        }

        return instancia;
    }

    public Personagem getPersonagem(int tipoTextura) {
        Personagem p;

        if (this.personagens.containsKey(tipoTextura)) {
            p = this.personagens.get(tipoTextura);
        } else {
            p = new Personagem(tipoTextura);
            this.personagens.put(tipoTextura, p);
        }

        return p;
    }
}
